/*
 *  Copyright 2001-2004 The Apache Software Foundation
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */
package ar.uba.fi.posgrado.economy.web.form.collect;

import java.util.ArrayList;
import java.util.List;

import org.apache.struts.action.ActionForm;
import org.apache.struts.util.LabelValueBean;

import ar.uba.fi.posgrado.economy.model.Collect;
import ar.uba.fi.posgrado.economy.model.Debt;

/**
 * Form para {@link Collect}
 * 
 * @author nicolas.gonzalez
 * @see ActionForm
 */
@SuppressWarnings("serial")
public class CollectForm extends ActionForm {

    private Long id;

    private String date;
    private Double value;
    
    private List<Debt> debts = new ArrayList<Debt>();
    
    private String collectTypeSelected;
    private List<LabelValueBean> collectTypeOptions = new ArrayList<LabelValueBean>();
    
    private Long customerId;
    // Usado para AutoComplete
    private String corporateName;
    
    private Long debtId;
    
    private String reason;
    private String code;
    
    private String courseSelected;
    private List<LabelValueBean> courseOptions = new ArrayList<LabelValueBean>();
    
    private Long debtCustomerId;
    private Double debtOriginalBalance;
    private Double debtBalance;
    private Double accountMaximumAvailable;
    // Este es solo un label de lo disponible
    private Double accountMaximumAvailableLabel;
    private String debtDiscAndBenefDescription;
    private String studentInformation;
    private String customerInformation;
    private String courseInformation;
    

    /**
     * @return the id
     */
    public Long getId() {
        return this.id;
    }

    /**
     * @param id the id to set
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * @return the date
     */
    public String getDate() {
        return this.date;
    }

    /**
     * @param date the date to set
     */
    public void setDate(String date) {
        this.date = date;
    }

    /**
     * @return the value
     */
    public Double getValue() {
        return this.value;
    }

    /**
     * @param value the value to set
     */
    public void setValue(Double value) {
        this.value = value;
    }

    /**
     * @return the collectTypeSelected
     */
    public String getCollectTypeSelected() {
        return this.collectTypeSelected;
    }

    /**
     * @param collectTypeSelected the collectTypeSelected to set
     */
    public void setCollectTypeSelected(String collectTypeSelected) {
        this.collectTypeSelected = collectTypeSelected;
    }

    /**
     * @return the customerId
     */
    public Long getCustomerId() {
        return this.customerId;
    }

    /**
     * @param customerId the customerId to set
     */
    public void setCustomerId(Long customerId) {
        this.customerId = customerId;
    }

    /**
     * @return the debtId
     */
    public Long getDebtId() {
        return this.debtId;
    }

    /**
     * @param debtId the debtId to set
     */
    public void setDebtId(Long debtId) {
        this.debtId = debtId;
    }

    /**
     * @return the reason
     */
    public String getReason() {
        return this.reason;
    }

    /**
     * @param reason the reason to set
     */
    public void setReason(String reason) {
        this.reason = reason;
    }

    

    /**
     * @return the collectTypeOptions
     */
    public List<LabelValueBean> getCollectTypeOptions() {
        return this.collectTypeOptions;
    }

    /**
     * @return the collectTypeOptions
     */
    public void setCollectTypeOptions(List<LabelValueBean> collectTypeOptions) {
        this.collectTypeOptions = collectTypeOptions;
    }

    /**
     * @return the corporateName
     */
    public String getCorporateName() {
        return this.corporateName;
    }

    /**
     * @param corporateName the corporateName to set
     */
    public void setCorporateName(String corporateName) {
        this.corporateName = corporateName;
    }

    /**
     * @return the courseSelected
     */
    public String getCourseSelected() {
        return this.courseSelected;
    }

    /**
     * @param courseSelected the courseSelected to set
     */
    public void setCourseSelected(String courseSelected) {
        this.courseSelected = courseSelected;
    }

    /**
     * @return the courseOptions
     */
    public List<LabelValueBean> getCourseOptions() {
        return this.courseOptions;
    }

    /**
     * @param courseOptions the courseOptions to set
     */
    public void setCourseOptions(List<LabelValueBean> courseOptions) {
        this.courseOptions = courseOptions;
    }

    /**
     * @return the debts
     */
    public List<Debt> getDebts() {
        return this.debts;
    }

    /**
     * @param debts the debts to set
     */
    public void setDebts(List<Debt> debts) {
        this.debts = debts;
    }

    /**
     * @return the debtOriginalBalance
     */
    public Double getDebtOriginalBalance() {
        return this.debtOriginalBalance;
    }

    /**
     * @param debtOriginalBalance the debtOriginalBalance to set
     */
    public void setDebtOriginalBalance(Double debtOriginalBalance) {
        this.debtOriginalBalance = debtOriginalBalance;
    }

    /**
     * @return the debtBalance
     */
    public Double getDebtBalance() {
        return this.debtBalance;
    }

    /**
     * @param debtBalance the debtBalance to set
     */
    public void setDebtBalance(Double debtBalance) {
        this.debtBalance = debtBalance;
    }

    /**
     * @return the accountMaximumAvailable
     */
    public Double getAccountMaximumAvailable() {
        return this.accountMaximumAvailable;
    }

    /**
     * @param accountMaximumAvailable the accountMaximumAvailable to set
     */
    public void setAccountMaximumAvailable(Double accountMaximumAvailable) {
        this.accountMaximumAvailable = accountMaximumAvailable;
    }

    /**
     * @return the debtDiscAndBenefDescription
     */
    public String getDebtDiscAndBenefDescription() {
        return this.debtDiscAndBenefDescription;
    }

    /**
     * @param debtDiscAndBenefDescription the debtDiscAndBenefDescription to set
     */
    public void setDebtDiscAndBenefDescription(String debtDiscAndBenefDescription) {
        this.debtDiscAndBenefDescription = debtDiscAndBenefDescription;
    }

    /**
     * @return the studentInformation
     */
    public String getStudentInformation() {
        return this.studentInformation;
    }

    /**
     * @param studentInformation the studentInformation to set
     */
    public void setStudentInformation(String studentInformation) {
        this.studentInformation = studentInformation;
    }

    /**
     * @return the customerInformation
     */
    public String getCustomerInformation() {
        return this.customerInformation;
    }

    /**
     * @param customerInformation the customerInformation to set
     */
    public void setCustomerInformation(String customerInformation) {
        this.customerInformation = customerInformation;
    }

    /**
     * @return the courseInformation
     */
    public String getCourseInformation() {
        return this.courseInformation;
    }

    /**
     * @param courseInformation the courseInformation to set
     */
    public void setCourseInformation(String courseInformation) {
        this.courseInformation = courseInformation;
    }

    /**
     * @return the code
     */
    public String getCode() {
        return this.code;
    }

    /**
     * @param code the code to set
     */
    public void setCode(String code) {
        this.code = code;
    }

    /**
     * @return the debtCustomerId
     */
    public Long getDebtCustomerId() {
        return this.debtCustomerId;
    }

    /**
     * @param debtCustomerId the debtCustomerId to set
     */
    public void setDebtCustomerId(Long debtCustomerId) {
        this.debtCustomerId = debtCustomerId;
    }

    /**
     * @return the accountMaximumAvailableLabel
     */
    public Double getAccountMaximumAvailableLabel() {
        return this.accountMaximumAvailableLabel;
    }

    /**
     * @param accountMaximumAvailableLabel the accountMaximumAvailableLabel to set
     */
    public void setAccountMaximumAvailableLabel(Double accountMaximumAvailableLabel) {
        this.accountMaximumAvailableLabel = accountMaximumAvailableLabel;
    }
    
    
    
    
    
}
